/**
 * 
 */
package com.monkeyboy.security.config;

import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;

import com.monkeyboy.security.properties.SecurityProperties;

/**
 * @Description
 *
 * @author Gavin<br>
 *         2019年8月25日
 */
@Configuration
@EnableConfigurationProperties(SecurityProperties.class)
public class CoreConfig {
	/**
	 * @Description<br>
	 * 					springsecurity对密码加密的验证支持，需要一个PasswordEncoder的实现类，<br>
	 *                  如果要用自己的加密方式的话就需要自己实现PasswordEncoder接口中的两个方法（加密和解密）
	 *                  </pre>
	 * 
	 * @Author Gavin</br>
	 *         2019年8月25日
	 */
	@Bean
	public PasswordEncoder passwordEncoder() {
		return new BCryptPasswordEncoder();
	}
}
